#define FABRIC_HEADER_TYPE_CPU         5

header_type ethernet_t {
    fields {
        dstAddr : 48;
        srcAddr : 48;
        etherType : 16;
    }
}

header_type ipv4_t {
  fields {
    version : 4;
    ihl : 4;
    diffserv : 8;
    totalLen : 16;
    identification : 16;
    flags : 3;
    fragOffset : 13;
    ttl : 8;
    proto : 8;
    hdrChecksum : 16;
    srcip : 32;
    dstip: 32;
  }
}

header_type ndn_t {
  fields {
    len: 8;
    name0: 16;
    name1: 16;
    name2: 16;
    name3: 16;
    name4: 16;
    name5: 16;
    name6: 16;
    name7: 16;
  }
}

header_type ndn_metadata_t {
  fields {
    prefixLen: 8;
    bitmap0: 32;
    bitmap1: 32;
    bitmap2: 32;
    bitmap3: 32;
    maskBits: 32;
    group: 2;
    component: 16;
    index: 10;
  }
}




